/**
 * @author Linrui
 * @since 2011-03-22
 * 产品的数据持久化封装类的接口
 */
package com.qeado.product.dao;

import com.qeado.product.model.Product;
import com.qeado.util.PageHelper;

public interface ProductDao {
	/**
	 * select method
	 */
	public PageHelper listAll(int pageNum,int pageSize,String orderBy, String asc, String queryType); //  查询所有
	public PageHelper listBySort(int pageNum,int pageSize,String typeCode ,String orderby, String asc, String queryType); // 分页查询发布的出售信息
	public PageHelper listByUser(int pageNum,int pageSize,String userName ,String orderby, String asc, String queryType); // 按用户
	public PageHelper listByCompany(int pageNum,int pageSize,String companyId ,String orderby, String asc, String queryType); // 按企业
	
	// 按类别模糊查询，分页
	public PageHelper listBySortLike(int pageNum, int pageSize, String typeCode, String orderBy, String asc, String queryType) throws Exception; 
	
	public Product getProdById(String id); // 通过指定ID查询某个product
	
	/* 分页按搜索关键字查询产品，并按要求排列 */
	public PageHelper listByKey(int pageNum, int pageSize, String key, String orderBy, String asc );
		
	/**
	 * insert method
	 */
	public boolean insertProduct(Product product); // 发布产品信息
	
	/**
	 * delete method
	 */
	public boolean deleteProduct(String id); // 删除商品
	
	/**
	 * update method
	 */
	public boolean updateProduct(Product product); // 更新发布的产品信息
}
